Microelectronic imaging devices are used in digital cameras, wireless devices with picture capabilities, and many other applications. Cellular telephones, personal digital assistants (PDAs), computers, cameras equipped on automobiles, and stand alone cameras, for example, are incorporating microelectronic imaging devices for capturing and sending pictures. The growth rate of microelectronic imaging devices has been steadily increasing as they become smaller and produce better images having higher pixel counts.
Microelectronic imaging devices include image sensors that use charged coupled device (CCD) systems, complementary metal-oxide semiconductor (CMOS) systems or other imager technology. CCD image sensors have been widely used in digital cameras and other applications. CMOS image sensors are also popular because they have low production costs, high yields, and small sizes.
A camera system uses at least one lens to focus one or more images of a scene to be captured by an imaging device. The imaging device includes a pixel array that comprises a plurality of photosensitive pixels arranged in a predetermined number of columns and rows. Each pixel in the array typically has an individual assigned address. A lens focuses light on the pixels of the pixel array, which then generate signals representing incident light. These signals are then processed to produce an output image.
It is sometimes desirable to alter an image captured by an imaging device. For example, a captured image may be distorted due to the lens used to capture the image. Straight lines in a scene may appear to be curved in the captured image due to the design of the lens used to focus the scene onto the pixel array. This distortion is commonly called “warping,” and may be particularly noticeable where certain types of wide angle lenses are used. FIG. 1A illustrates an input image 110. Input image 110 includes lines 116 and a rectangular object 118. Input image 110 has warping (e.g., lines 116, that in reality are straight, appear to be curved).
Warping in a captured image 110 can be corrected through non-linear image processing (known as “dewarping”). FIG. 1B illustrates a corrected (i.e., “dewarped”) image 112, in which the lines 116 from the scene which appeared curved in the captured image 110 (FIG. 1A) now appear straight.
It may also be desirable to alter the apparent viewpoint of the camera. For example, image processing (known as “perspective correction”) can be used to make it appear as though the camera is capturing the image from a position further away from the viewer and looking at the scene from a more downward angle, reducing the effect of perspective causing lines to appear as though they converge in the distance. For example, the side edges of the rectangular object 118 appear to converge away from the camera in the dewarped image 112 of FIG. 1B.
FIG. 1C illustrates a perspective-corrected and dewarped image 114. Perspective-corrected and dewarped image 114 can be generated by applying further image processing to dewarped image 112 (FIG. 1B). Based on the layout in the perspective-corrected image 114, the camera appears to have been in a different location from the one used to take the warped and dewarped images 110, 112, relative to the rectangular object 118. The side edges of the rectangular object 118 also no longer appear to converge, but rather are parallel.
Dewarping and perspective correction may require significant processing of the input image 110. Further, the processing may require large amounts of hardware to implement. Accordingly, there is a need and desire for a spatially and temporally efficient method for providing dewarping and/or perspective correction of an image.